There are requirements from time to time to discriminate between various frequency signals at the low end of the frequency spectrum. One example of this requirement is to have the capability of detecting ringing signals in Germany over a narrow frequency band of 23 Hz to 54 Hz. The same detector is also required to not detect ringing signals that are at or below 18 Hz., or above 64 Hz. The detection is desired to cause a logic signal that can be read by a microprocessor.
Attempts to achieve this type of requirement have resulted in software programs which count timing intervals of a rectangular wave generated by a portion of a ringing detector circuit. This approach has worked well in high speed microprocessor based systems and in systems that have short intervals between interrupt requests that use routines related to the interrupt intervals when discriminating between low frequency signals.
However, this approach has been found not to work well in many slower microprocessor based systems, or in systems which have relatively wide spacing between interrupt requests when associated interrupt routines are used for low frequency discrimination.